New multi-media techniques such as Voice over IP (VoIP) and Internet Protocol Television (IPTV) open a whole range of new multi-media services. One type of these services enables a group of users to separately watch the same TV channel, while communicating with each other via text, audio and/or video using a separate real-time communication channel (e.g. VoIP) for the direct communication. Such services require that the output signal of the terminals is transmitted at the same time to all users in the group so that each user will experience a specific TV moment (e.g. a goal in a live football match) at the same time. In other words, the outputs of the display devices in the group, e.g. televisions, PDAs, PCs or a combination thereof, should be synchronized.
In an IPTV system the TV channel signal is typically transmitted as one or more packetized streams over a high-bandwidth IP network of an operator via edge routers and access nodes to the terminals of the subscribers to such services. During transmission of the streams, the packets are subjected to unknown delays in the network such as transmission delays, differences in network routes and differences in coding and decoding delays. As a consequence the temporal relationship between packets of audio and video streams received at one terminal and those received at another terminal will be disturbed.
To stream the IPTV content to the terminals usually the Real-time Transport Protocol (RTP) is used. RTP provides sequence numbering and time stamping. Using RTP the temporal relation in one stream (intra-stream synchronization) and between associated streams (inter-stream synchronization) can be restored.
In order to achieve group-synchronization or inter-destination synchronization (as required by the services as referred to above) further measures are necessary. Several techniques are known and all employ time-stamping and variable-delay buffers in the terminals. A variable-delay buffer is capable of delaying a stream for a certain amount of time.
In the article “An Application-Level QoS Comparison of Inter-Destination Synchronization Schemes for Continuous Media Multicasting” by Nunome et al. (IEICE trans. Commun. vol. 87, 2004, pp. 3057-3067) two types of inter-destination synchronization schemes are described. A first type uses a central synchronization master, which collects timing information from all terminals in the group and adjusts the output timing by distributing control packets to the terminals. A second type regards a distributed control scheme, wherein each terminal multicasts all timing information to all other terminals in the group. Implementation of such schemes in a typical IPTV system introduces however certain problems. One problem related to the schemes is the requirement of an absolute or central clock, that synchronizes all local clocks prior to the inter-destination synchronization of the streams. Such local clock synchronization may be difficult to achieve in practice. A further problem related to the prior art is the limited scalability. Synchronization control packets are distributed using dedicated multicast channels, which are a limited resource, and a central synchronization master may only be capable of handling a certain number of terminals.
One way of achieving group-synchronization in an IPTV system is the synchronization of the network nodes in the network of the operator so that all viewers connected with a terminal, e.g. a set-top box, to these synchronized network nodes are capable of viewing the broadcasted program at the same time. That way, the terminals will always be in sync, irrespective whether a particular service requires group-synchronization. This solution, which is described in more detail in a related European patent application no. 07020737.8, requires adaptation of the network nodes in the network.
It is desirable to provide group-synchronization for particular services without modification of the existing network infrastructure of the provider.